package main.java.FSMDE.models;

import java.util.UUID;

public class FactoryTransition {

	public static TransitionControl createControlTransition(UUID transitionId,
			String transitionName) {
		return new TransitionControl(transitionId, transitionName);
	}

	public static TransitionControl createControlTransition(
			String transitionName) {
		return new TransitionControl(transitionName);
	}

	public static TransitionFunctional createFunctionalTransition(
			UUID transitionId, String transitionName) {

		return new TransitionFunctional(transitionId, transitionName);
	}

	public static TransitionFunctional createFunctionalTransition(
			String transitionName) {
		return new TransitionFunctional(transitionName);
	}

	public static Transition create(String transitionName,
			TransitionType transitionType) {

		switch (transitionType) {
		case Control: {
			return createControlTransition(transitionName);
		}
		case Functional: {
			return createFunctionalTransition(transitionName);
		}
		}
		return null;
	}
}
